package IOStream.SerializationStream;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;

/**
 * ClassName:Dome001
 * Package:IOStream.SerializationStream
 * Description:
 *
 * @Author:ZhangXin
 * @Create2023/3/3-19:31
 * @Version:v1.0
 */
public class ObjectOutputStream001 {
    /**序列化流/对象操作输出流：可以把Java中的对象写到本地文件中
     *
     * public ObjectOutputStream(OutputStream out) 把基本流包装成高级流
     * public final void writeObject(Object obj) 把对象序列化(写到文件中)
     * 细节：使用对象输出将对象保存到文件时会出现NotSerializableException异常
     * 解决方案：需要让JavaBean实现Serializable接口*/
    public static void main(String[] args) throws IOException {
        //创建对象
        Student stu = new Student("zhangsan",24,"南京");
        //创建序列化流的对象/对象操作输出流
        ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("E:\\aaa\\a.txt"));
        //写出数据
        oos.writeObject(stu);
        //释放资源
        oos.close();

    }
}
